package lagou.mode3;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

/*使用 List 集合实现简易的学生信息管理系统，要求打印字符界面提示用户选择相应的功 能，根据用户输入的选择去实现增加、删除、修改、查找以及遍历所有学生信息的功能。

        其中学生的信息有：学号、姓名、年龄。 要求： 尽量将功能拆分为多个.java 文件。*/
public class Homework4 {
    public static void main(String[] args) {
        List<Student> t1=new ArrayList();
        Scanner sc= new Scanner(System.in);
        tiaochu:while(true) {
            Client.show();
            System.out.println("请输入序号选择您要执行的操作：");
            int a = sc.nextInt();

            switch (a) {
                case 1:
                    System.out.println("请输入要增加的学生信息：");
                    System.out.println("请输入学生学号：");
                    int id1 = sc.nextInt();
                    System.out.println("请输入学生姓名：");
                    String name = sc.next();
                    System.out.println("请输入学生年龄：");
                    int age = sc.nextInt();
                    Server.add(t1, new Student(id1, name, age));
                    System.out.println("成功添加学生");
                    break;
                case 2:
                    System.out.println("请输入要删除的学生学号：");
                    int id2 = sc.nextInt();
                    for (Student st : t1) {
                        if (st.getStudent_id() == id2)
                            Server.delete(t1, st);
                    }
                    System.out.println("您所指定的学生信息已被成功删除");
                    break;
                case 3:
                    System.out.println("请输入要修改的学生学号：");
                    int id3_old = sc.nextInt();
                    System.out.println("请输入新的学生学号：");
                    int id3_new = sc.nextInt();
                    System.out.println("请输入新的学生姓名：");
                    String name3 = sc.next();
                    System.out.println("请输入新的学生年龄：");
                    int age3 = sc.nextInt();
                    for (Student st :
                            t1) {
                        if (st.getStudent_id() == id3_old) {
                            int index;
                            index = t1.indexOf(st);
                            Server.change(t1, new Student(id3_new, name3, age3), index);
                        }
                    }
                    System.out.println("学生信息修改成功");
                    break;
                case 4:
                    System.out.println("请输入要查找学生的学号：");
                    int id4 = sc.nextInt();
                    for (Student st : t1
                    ) {
                        if (st.getStudent_id() == id4)
                            System.out.println("根据您提供的学号，查找到的学生为：" + st);
                    }
                    break;
                case 5:
                    System.out.println("所有学生信息如下：");
                    for (Student st : t1
                    ) {
                        System.out.println(st);
                    }
                    break;
                case 0:
                    System.out.println("成功退出系统。");
                    break tiaochu;

            }

        }

    }
}
